package com.grm.common;

import com.grm.enums.CodeMessageEnum;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.ToString;

/**
 * desc: 后端返回json统一格式封装类
 *
 * @author gaorimao
 * @since 2021-3-13
 */
@Data
@ToString
@AllArgsConstructor
public class Result {
	private int code;
	private String message;
	private Object data;
	
	/**
	 * desc: 成功，不返回数据
	 *
	 * @param message 成功信息
	 * @return result
	 */
	public static Result success(String message) {
		return new Result(CodeMessageEnum.SUCCESS.getCode(),message,null);
	}
	
	/**
	 * desc: 成功，返回数据
	 *
	 * @param message 成功信息
	 * @param data 数据
	 * @return result
	 */
	public static Result success(String message,Object data) {
		return new Result(CodeMessageEnum.SUCCESS.getCode(),message,data);
	}
	
	/**
	 * desc: 失败
	 *
	 * @param codeMessageEnum 错误码，错误信息枚举值
	 * @return result
	 */
	public static Result failure(CodeMessageEnum codeMessageEnum) {
		return new Result(codeMessageEnum.getCode(),codeMessageEnum.getMessage(),null);
	}
}
